using System;
using System.Collections.Generic;
using System.Text;

namespace SDMX_ML.Framework.Structure
{
    public enum TextTypeType
    {
        String,
        BigInteger,
        Integer,
        Long,
        Short,
        Decimal,
        Float,
        Double,
        Boolean,
        DateTime,
        Date,
        Time,
        Year,
        Month,
        Day,
        MonthDay,
        YearMonth,
        Duration,
        URI,
        Timespan,
        Count,
        InclusiveValueRange,
        ExclusiveValueRange,
        Incremental,
        ObservationalTimePeriod
    }

    public class TextFormatType
    {
        private TextTypeType? _texttype;
        private bool? _issequence;
        private int? _minlength;
        private int? _maxlength;
        private double? _startvalue;
        private double? _endvalue;
        private double? _interval;
        private string _timeinterval;
        private int? _decimals;
        private string _pattern;
        private string _duration;

        public TextTypeType? Texttype
        {
            get { return _texttype; }
            set { _texttype = value; }
        }
        

        public bool? IsSequence
        {
            get { return _issequence; }
            set { _issequence = value; }
        }
        

        public int? Minlength
        {
            get { return _minlength; }
            set { _minlength = value; }
        }
        

        public int? Maxlength
        {
            get { return _maxlength; }
            set { _maxlength = value; }
        }
        

        public double? Startvalue
        {
            get { return _startvalue; }
            set { _startvalue = value; }
        }
        

        public double? Endvalue
        {
            get { return _endvalue; }
            set { _endvalue = value; }
        }
        

        public double? Interval
        {
            get { return _interval; }
            set { _interval = value; }
        }
        

        public string Timeinterval
        {
            get { return _timeinterval; }
            set { _timeinterval = value; }
        }
        

        public int? Decimals
        {
            get { return _decimals; }
            set { _decimals = value; }
        }
        

        public string Pattern
        {
            get { return _pattern; }
            set { _pattern = value; }
        }

        public string Duration
        {
            get { return _duration; }
            set { _duration = value; }
        }

    }
}
